// import { v4 } from "uuid";
// import { LMessage } from "@/components";

// /**
//  * used to control the chrome proxy 
//  * not yet used
//  */
// class RequestProxy {
//   constructor() {
//     this.mode = "fixed_servers";
//     this.scheme = "http";
//     this.settings = chrome.proxy.settings;

//     this.defaultScope = "regular";
//     this.proxyMap = new Map();
//   }
//   /**
//    * used to set proxy for chrome
//    * @param {*} options 
//    * @param {*} callback 
//    */
//   set(options, callback) {
//     this.settings.set(options, callback);
//   }
//   /**
//    * used to remove proxy for chrome
//    * @param {*} options 
//    * @param {*} callback 
//    */
//   clear(options, callback) {
//     if (!options) {
//       this.settings.clear({scope: this.defaultScope}, callback ? callback : () => {});
//     }
//     this.settings.clear(options. callback);
//   }
//   /**
//    * set proxy by ip and port
//    * @param {*} options 
//    * @param {*} successCallback 
//    * @returns 
//    */
//   setProxyByIpAndPort(options, successCallback) {
//     let { ip, port, scope } = options;  
//     scope = scope ? scope : this.defaultScope;
//     const key = v4();
//     this.ip = ip;
//     this.port = port;
//     this.set({
//       value: {
//         mode: this.mode,
//         rules: {
//           singleProxy: {
//             scheme: this.scheme,
//             host: ip,
//             port: port,
//           },
//         },
//         scope: scope,
//       },
//     }, successCallback);
//     this.proxyMap.set(key, { ip, port, scope });
//     return key;
//   }
//   /**
//    * set pac script to customize proxy
//    * @param {*} pacScript {FindProxyForURL(url,host), data}
//    * @param {*} callback 
//    */
//   setProxyByPacScript(pacScript, callback) {
//     this.settings.set({
//       value: {
//         mode: "pac_script",
//         pacScript,
//       },
//       scope: this.defaultScope,
//     }, callback ? callback : () => { LMessage.success("代理开启成功"); });
//   }
// }

// let requestProxy = new RequestProxy();

// export function userRequestProxy() {
//   if (requestProxy) {
//     return requestProxy;
//   }
// }

